package com.ax.base.drugadministration.service;

import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Service;

import com.ax.base.common.domain.Tree;
import com.ax.base.drugadministration.domain.BaseDrugDep;
import com.ax.base.system.domain.MenuDO;

@Service
public interface DrugAdministrationDepService {
	
	/**
	 * 药监查询(模块:药监)
	 * 
	 * @param Map<String, Object> map
	 *           
	 * @return PageUtils
	 */
	public List<BaseDrugDep> queryDrugAdministrationDepSer(Map<String, Object> params);
	
	/**
	 * 药监增加(模块:药监部门)*跳转增加页面
	 * 
	 * @param Long pId
	 *           
	 * @return BaseDrugDep baseDrugDep
	 */
	BaseDrugDep getBaseDrugDep(Long pId);
	
	/**
	 * 药监保存(模块:药监部门)
	 * 
	 * @param BaseDrugDep baseDrugDep
	 *           
	 * @return SUCC
	 */
	public void insertDrugDepSer(BaseDrugDep baseDrugDep);

	/**
	 * 药监修改(模块:药监部门)
	 * 
	 * @param BaseDrugDep baseDrugDep
	 *           
	 * @return SUCC
	 */
	public void updateDrugDepSer(BaseDrugDep baseDrugDep);
	
	/**
	 * 药监状态修改(模块:药监部门)
	 * 
	 * @param String[] parameter,Integer flag
	 *           
	 * @return SUCC
	 */
	public void updateStateSer(String[] parameter,Integer flag);
	
	/**
	 * 树形列表(药监部门)
	 * 
	 * @param 无
	 *           
	 * @return Tree<MenuDO>
	 */
	public Tree<MenuDO> list();
	
	/**
	 * 编辑修改树
	 * 
	 * @param 无
	 *           
	 * @return Tree<MenuDO>
	 */
	public Tree<MenuDO> treeList(Long drugManagerId);
	
	/**
	 * Tree
	 * 
	 * @param Long parentDrugDepId
	 *           
	 * @return Tree<MenuDO>
	 */
	public Tree<MenuDO> getDrugTree(Long parentDrugDepId);
	
	/**
	 * 名字是否重复(新增)
	 * 
	 * @param String parameter
	 *         
	 * @return boolean
	 */
	public boolean validateSer(String pt);
	
	/**
	 * 名字是否重复(修改)
	 * 
	 * @param String parameter
	 *         
	 * @return boolean
	 */
	public boolean updateValidateSer(String pt);
	
}
